Referring to FIG. 1, in a conventional optical touch overlay, optical emitters 14, 22 and detectors 18, 24 are arranged along opposite edges of a rectangular touch sensitive surface 16 and an orthogonal grid is formed by the optical beams 12, 20 transmitted between the emitters and the corresponding detectors. As used herein, the term “beam” means the light passing along a narrow optical path between an emitter and a detector, and does not imply that any given emitter necessarily emits light in one or more discrete directed beams although, in the case of FIG. 1, each emitter only emits light over a narrow angle to ensure that only the directly opposite detector receives light from it. Furthermore, the term “light” includes IR and UV radiation, and the term “optical” is to be interpreted accordingly.
The touch sensitive surface may be an optically transparent planar waveguide through which the beams pass by total internal reflection, or a surface over which the beams pass in close proximity to the surface and substantially parallel to the surface.
In the case of a waveguide, the material used could be a transparent sheet of plastic or glass. An object such as a finger or a stylus coming into contact with the transparent waveguide will have a higher refractive index than the air normally surrounding the waveguide. Over the area of contact, the increase in refractive index will disturb the total internal reflection of the beams within the waveguide. The disruption of total internal reflection increases the light leakage from the waveguide, attenuating any beams passing through the position of the touch event. Correspondingly, the removal of the touching object will cause the attenuation of the passing beams to be reduced. Such changes in attenuation are detectable at the output of the associated detectors. When the touch sensitive surface is a surface over which the beams pass, an object which is not optically transparent at the wavelength in use will attenuate or interrupt the beams passing through the object location. In either case, a beam is deemed interrupted if its amplitude, as detected by the relevant detector, falls below a predetermined or adaptively calculated threshold value Th.
The emitters 14, 22 and detectors 18, 24 are driven by a controller 200 via drive circuits 210. The controller 200, which may, for example, comprise a suitably programmed microprocessor or a PLA, also serves to process the data output from the detectors, after analogue to digital conversion, to determine the location of a touch point. The beams are scanned in sequence and logic in the CPU can determine the intersection point of one or more interrupted beams and deduce the position of the interrupting object. The object must be large enough to detectably attenuate at least one beam in one axis and at least one beam in the orthogonal axis, so resolution is typically quite poor unless large numbers of emitters and/or detectors are used. By scanning the beams we mean sampling the detector outputs to determine the amplitude of the, or each, beam falling on each detector.
The use of an orthogonal grid of beams is effective when at most one opaque object is to be located in the touch sensitive area because the central position of that object can be completely described by a pair of orthogonal coordinates yielded by the scanning process.
U.S. Pat. No. 4,301,447 (Funk et al.) discloses a mechanism for detecting the interruption of the beams between any given emitter and some or all of the detectors along the opposing edge of the touch sensitive surface for the purposes of increasing the resolution of the touch sensing mechanism.
Patents EP 0601651A1 and U.S. Pat. No. 5,635,724 disclose methods for processing the detector outputs from such a scanning system in order to resolve the centrelines of the shadows cast when an interrupting object is placed in the path of an emitter with a diverging pattern of radiation.
In these disclosures, the resolution is improved, but there is no accommodation for multiple simultaneous touch events. As shown in FIG. 2A, the coordinates generated by such a system in the presence of more than one interrupting object 26, 28 can be ambiguous because the beams associated with one touch point could intersect with the beams of another touch point and indicate the possible presence of at least one false additional touch point. For example, two pairs of interrupted orthogonal beams could indicate between two and four simultaneous touch events at the corners of the rectangle described by the four intersecting beams.
In FIG. 2A, two touch events 26 and 28 at locations T1 and T2 respectively in the touch sensitive surface 30 interrupt beams 32 and 34 in one axis and beams 36 and 38 in the other axis. It is evident from the drawing that with only this information, associated logic circuitry cannot determine with certainty whether there are touch events at locations T1 and T2 or at locations F1 and F2 or at some combination of these locations which is consistent with the interruption of the four beams 32, 34, 36 and 38.
IBM Technical Disclosure Bulletin Vol. 28, No. 4, September 1985 pages 1760-1762 (“Enhanced Optical Touch Input Panel”), M. Johnson, discloses the use of a bitmap of the touch sensitive surface onto which is mapped the triangular shadow areas of such diverging interrupted beams from successively activated emitters around the periphery of the touch sensitive surface. The method disclosed consists of initialising all of the bitmap points to the same value at the outset and setting the bitmap points to the opposite value at all the points along beams which are not interrupted when the first emitter is activated. Subsequently, the first emitter is deactivated and the next emitter is activated and again any points along beams, which are not interrupted are set to the opposite value to that set at initialisation. Having sequentially activated all of the emitters and having processed the bitmap points in this way for each emitter activation time, the final bitmap will retain the initialised values only in those points which are traversed by beams which were interrupted for all emitter activation times and so are most likely to correspond to real touch events.
The use of a constant resolution Cartesian bitmap with the minimum spacing between intersection points throughout would be very wasteful of RAM storage and processing power. To apply the bitmapped method of IBM in a typical application (perhaps 16 emitters and 16 detectors) with a reasonable response time means either resolution must be reduced or considerable resources made available. As such, this bitmapped approach is only reasonable for low resolution applications.
It is therefore an object of the present invention to resolve the location of one or more simultaneous touch events within the touch sensitive area with high resolution and without requiring excessive processing power or storage or the use of expensive optical sensors such as integrated linear detector arrays or cameras.